/*
 * @(#)QueryParameterConfig.java
 * Date 2013-08-13
 * Version 1.0
 * Author Jim Horner
 * Copyright (c)2012
 */


package us.hornerscorners.lamppost.registry.config;

import us.hornerscorners.lamppost.registry.constant.QuerySlotName;
import us.hornerscorners.lamppost.registry.constant.XDSDataType;


/**
 *
 * @author jim
 */
public class QueryParameterConfig {

    /** Field description */
    private boolean andOrSupported;

    /** Field description */
    private XDSDataType dataType;

    /** Field description */
    private boolean multipleAllowed;

    /** Field description */
    private boolean required;

    /** Field description */
    private QuerySlotName slotName;

    /** Field description */
    private boolean sqlLikeSupported;

    /**
     * Constructs ...
     *
     */
    public QueryParameterConfig() {

        super();
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public XDSDataType getDataType() {
        return dataType;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public QuerySlotName getSlotName() {

        return this.slotName;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public boolean isAndOrSupported() {
        return andOrSupported;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public boolean isMultipleAllowed() {
        return multipleAllowed;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public boolean isRequired() {
        return required;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public boolean isSqlLikeSupported() {
        return sqlLikeSupported;
    }

    /**
     * Method description
     *
     *
     * @param andOrSupported
     */
    public void setAndOrSupported(boolean andOrSupported) {
        this.andOrSupported = andOrSupported;
    }

    /**
     * Method description
     *
     *
     * @param dataType
     */
    public void setDataType(XDSDataType dataType) {
        this.dataType = dataType;
    }

    /**
     * Method description
     *
     *
     * @param multipleAllowed
     */
    public void setMultipleAllowed(boolean multipleAllowed) {
        this.multipleAllowed = multipleAllowed;
    }

    /**
     * Method description
     *
     *
     * @param required
     */
    public void setRequired(boolean required) {
        this.required = required;
    }

    /**
     * Method description
     *
     *
     */
    public void setSlotName(QuerySlotName name) {

        this.slotName = name;
    }

    /**
     * Method description
     *
     *
     * @param sqlLikeSupported
     */
    public void setSqlLikeSupported(boolean sqlLikeSupported) {
        this.sqlLikeSupported = sqlLikeSupported;
    }
}
